/*
 * ValidResource.h
 *
 *  Created on: 2013. 9. 4.
 *      Author: mega@gamevil.com
 */

#ifndef VALIDRESOURCE_H_
#define VALIDRESOURCE_H_

#include <map>

namespace ProjectZ { namespace NResource {

class ValidResource
{
public:
	struct Flyweight
	{
		int _LEVEL;
		int _ZEN;
		int _GOLD;
		int _STR;
		int _DEX;
		int _CON;
		int _INT;
		int _STAT_P;
		int _HP;
		int _SP;
		int _ATT;
		int _DEF;
		int _SKILL_P;
		int _AVOID_RATE;
		int _CRITICAL_RATE;
		int _CRITICAL_DAMAGE;
		int _DAMAGES;
	};

public:
	ValidResource();
	virtual ~ValidResource();

	bool LoadResource();
	Flyweight * GetFly(int level);

private:
	void	Clear();

private:
	typedef std::map<int, Flyweight *>	DATATREE;
	DATATREE	clsFlyTree;
};

} /* NResource */ } /* ProjectZ */

#endif /* VALIDRESOURCE_H_ */
